Skip to content

2 High finding: MultiSig and Orchestrator#419

Open
0xkoiner wants to merge 2 commits into
ithacaxyz:mainfrom
0xkoiner:0xkoiner/poc-findings
Open

2 High finding: MultiSig and Orchestrator#419
0xkoiner wants to merge 2 commits into
ithacaxyz:mainfrom
0xkoiner:0xkoiner/poc-findings

Conversation

@0xkoiner

Copy link
Copy Markdown

Summary

  • Add POC proving Orchestrator.withdrawTokens can be called by anyone to drain accumulated
    payment tokens (finding 01)
  • Add POC proving MultiSigSigner.initConfig can be hijacked by a session key to take over a
    super-admin multisig key (finding 02)
  • Full writeup in test/poc-findings/findings.md

Details

test_orchestratorPaymentsSweep: Two legitimate intents execute with paymentRecipient = address(oc). 0.6 ether of ERC20 accumulates on the Orchestrator. An unprivileged attacker
sweeps everything via withdrawTokens.

test_initConfigNoAuthCheck: A session key (non-super-admin) with initConfig permission
hijacks the multisig config for a super-admin External key through the Orchestrator. Config
is permanently locked. Attacker produces valid signatures for the hijacked key.

Test plan

`test/poc-findings/TestFindings.t.sol`
  • forge test --match-test test_orchestratorPaymentsSweep -vvv
  • forge test --match-test test_initConfigNoAuthCheck -vvv
  • forge test (full suite still passes)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant